package co.edu.javeriana.konigsberg.xavier.servicio;

import javax.ejb.EJB;
import javax.ejb.Stateful;

import co.edu.javeriana.konigsberg.xavier.dao.desc.SeguridadDAOLocal;
import co.edu.javeriana.konigsberg.xavier.dto.UsuarioDTO;
import co.edu.javeriana.konigsberg.xavier.entidad.Usuario;

@Stateful
public class SeguridadServicio implements SeguridadServicioLocal,
		SeguridadServicioRemote {

	@EJB
	private SeguridadDAOLocal seguridadDAO;
	
	@EJB
	private AreaGestionServicioLocal areaGestionServicio;
	
	@Override
	public UsuarioDTO autenticar(UsuarioDTO usuarioDTO) {
		Usuario usuario = new Usuario();
		usuario.setUsuario(usuarioDTO.getUsuario());
		usuario.setClave(usuarioDTO.getClave());
		usuario = seguridadDAO.autenticar(usuario);
		if(usuario != null && usuario.getPerfil() != null){
			usuarioDTO.setNombre(usuario.getNombre());
			usuarioDTO.setApellido(usuario.getApellido());
			usuarioDTO.setPerfil(usuario.getPerfil());
			usuarioDTO.setIdUsuario(usuario.getIdUsuario());
			usuarioDTO.setCorreoElectronico(usuario.getCorreoElectronico());
			usuarioDTO.setAreaGestionDTO(areaGestionServicio.obtenerAreaGestionPorId(usuario.getIdAreaGestion()));
		}
		return usuarioDTO;
	}

}
